package com.zmn.plat.manager.dictionary;

import com.google.common.collect.Lists;
import com.zmn.common.dictionary.DictModel;
import com.zmn.common.dto.VtDTO;
import com.zmn.plat.manager.constant.MsgTemplateConsts;

import java.util.ArrayList;
import java.util.List;

/**
 * 描述: 消息管理相关字典类
 *
 * @auther tanghongjun
 * @since 2019/10/22 10:00
 */
public class MsgTemplateDict {

    /**
     * 描述:状态：1-已停用，2-已启用 list
     *
     * @return java.util.List<com.zmn.common.dictionary.DictModel>
     * @author tanghongjun
     * @since 2019/10/22 10:18
     **/
    public static List<DictModel> getStatuslist() {
        ArrayList<DictModel> arrayList = Lists.newArrayListWithExpectedSize(ProductDict.STATUS_ENABLE);
        arrayList.add(new DictModel(MsgTemplateConsts.MSG_TEMP_STATUS_NORMAL, MsgTemplateConsts.MSG_TEMP_STATUS_NORMAL_STR));
        arrayList.add(new DictModel(MsgTemplateConsts.MSG_TEMP_STATUS_STOP, MsgTemplateConsts.MSG_TEMP_STATUS_STOP_STR));
        return arrayList;
    }

    /**
     * 描述: 获取状名称
     *
     * @auther tanghongjun
     * @since 2019/10/22 10:18
     */
    public static String getStatusName(int status) {
        switch (status) {
            case MsgTemplateConsts.MSG_TEMP_STATUS_NORMAL:
                return MsgTemplateConsts.MSG_TEMP_STATUS_NORMAL_STR;
            case MsgTemplateConsts.MSG_TEMP_STATUS_STOP:
                return MsgTemplateConsts.MSG_TEMP_STATUS_STOP_STR;
            default:
                return "";
        }
    }

    /**
     * 描述:状态：1-已停用，2-已启用 list
     *
     * @return java.util.List<com.zmn.common.dictionary.DictModel>
     * @author tanghongjun
     * @since 2019/10/22 10:18
     **/
    public static List<DictModel> getTempTypelist() {
        ArrayList<DictModel> arrayList = Lists.newArrayListWithExpectedSize(MsgTemplateConsts.MSG_TEMP_TYPE_CURRENCY);
        arrayList.add(new DictModel(MsgTemplateConsts.MSG_TEMP_TYPE_CITY, MsgTemplateConsts.MSG_TEMP_TYPE_CITY_STR));
        arrayList.add(new DictModel(MsgTemplateConsts.MSG_TEMP_TYPE_CHANNEL, MsgTemplateConsts.MSG_TEMP_TYPE_CHANNEL_STR));
        arrayList.add(new DictModel(MsgTemplateConsts.MSG_TEMP_TYPE_CHANNEL_CITY, MsgTemplateConsts.MSG_TEMP_TYPE_CHANNEL_CITY_STR));
        arrayList.add(new DictModel(MsgTemplateConsts.MSG_TEMP_TYPE_CURRENCY, MsgTemplateConsts.MSG_TEMP_TYPE_CURRENCY_STR));
        return arrayList;
    }

    /**
     * 描述: 场景类型 1：表单；2：百度收银台订单；3:直连订单
     *
     * @return java.util.List<com.zmn.common.dictionary.DictModel>
     * @author wangjie
     * date 2020/7/9 15:05
     **/
    public static List<VtDTO> listSceneType() {
        ArrayList<VtDTO> arrayList = Lists.newArrayListWithExpectedSize(MsgTemplateConsts.SCENE_TYPE_ORDER_ID);
        arrayList.add(new VtDTO(MsgTemplateConsts.SCENE_TYPE_FROM_ID, MsgTemplateConsts.SCENE_TYPE_FROM_ID_STR, true));
        arrayList.add(new VtDTO(MsgTemplateConsts.SCENE_TYPE_PAY_ID, MsgTemplateConsts.SCENE_TYPE_PAY_ID_STR, false));
        arrayList.add(new VtDTO(MsgTemplateConsts.SCENE_TYPE_ORDER_ID, MsgTemplateConsts.SCENE_TYPE_ORDER_ID_STR, false));
        return arrayList;
    }

    /**
     * 描述: 获取状名称
     *
     * @auther tanghongjun
     * @since 2019/10/22 10:18
     */
    public static String getTempTypeName(int type) {
        switch (type) {
            case MsgTemplateConsts.MSG_TEMP_TYPE_CITY:
                return MsgTemplateConsts.MSG_TEMP_TYPE_CITY_STR;
            case MsgTemplateConsts.MSG_TEMP_TYPE_CHANNEL:
                return MsgTemplateConsts.MSG_TEMP_TYPE_CHANNEL_STR;
            case MsgTemplateConsts.MSG_TEMP_TYPE_CHANNEL_CITY:
                return MsgTemplateConsts.MSG_TEMP_TYPE_CHANNEL_CITY_STR;
            case MsgTemplateConsts.MSG_TEMP_TYPE_CURRENCY:
                return MsgTemplateConsts.MSG_TEMP_TYPE_CURRENCY_STR;
            default:
                return "";
        }
    }
}
